import numpy as np


a = np.array([1,2,3])
b = np.array([4,5,6])
c = np.ones((3,1))
print(f"a:{a}\nb:{b}\nc:\n{c}\n")

#注意这里的*实现的是元素级乘法（哈达玛积），而非线性代数中的矩阵乘法
d1 = a+b    #[5 7 9]分别相加
d2 = a*b    #[ 4 10 18]分别相乘
d3 = a**2   #[1 4 9]分别取平方
print(f"d1= a+b:{d1}\nd2= a*b:{d2}\nd3=a**2:{d3}\n")


#矩阵乘法numpy.dot()
new_a = a.reshape(1,3)#将数组a重塑为 1 行 3 列的二维数组
#或者new_a = np.array([[1,2,3]])
print(f"new_a:{new_a}\n")
d4 = np.dot(new_a,c)
d5 = np.dot(c,new_a)
print(f"d4=new_a*c:{d4}\nd5=c*new_a:\n{d5}")


